@echo off
chcp 65001 >nul
echo ========================================
echo   部署状态检查
echo ========================================
echo.

set ERRORS=0
set WARNINGS=0

:: 检查服务
echo 1. 检查服务状态...
sc query nanchang-tour >nul 2>&1
if %errorLevel% equ 0 (
    echo   ✓ nanchang-tour 服务存在
) else (
    echo   ✗ nanchang-tour 服务不存在
    set /a ERRORS+=1
)

:: 检查文件
echo.
echo 2. 检查文件结构...
if exist "backend\.env" (
    echo   ✓ 环境配置文件存在
) else (
    echo   ✗ 环境配置文件不存在
    set /a ERRORS+=1
)

if exist "backend\staticfiles" (
    echo   ✓ 静态文件目录存在
) else (
    echo   ✗ 静态文件目录不存在
    set /a WARNINGS+=1
)

if exist "frontend\dist\index.html" (
    echo   ✓ 前端构建文件存在
) else (
    echo   ✗ 前端构建文件不存在
    set /a ERRORS+=1
)

:: 检查端口
echo.
echo 3. 检查端口...
netstat -an | findstr ":8000" >nul 2>&1
if %errorLevel% equ 0 (
    echo   ✓ 端口 8000 已监听
) else (
    echo   ⚠ 端口 8000 未监听
    set /a WARNINGS+=1
)

netstat -an | findstr ":8080" >nul 2>&1
if %errorLevel% equ 0 (
    echo   ✓ 端口 8080 已监听
) else (
    echo   ⚠ 端口 8080 未监听
    set /a WARNINGS+=1
)

:: 检查API
echo.
echo 4. 检查API响应...
curl -s -o nul -w "%%{http_code}" http://localhost:8000/api/attractions/ | findstr /C:"200" /C:"301" /C:"302" >nul 2>&1
if %errorLevel% equ 0 (
    echo   ✓ API响应正常
) else (
    echo   ✗ API响应异常
    set /a ERRORS+=1
)

echo.
echo ========================================
if %ERRORS% equ 0 (
    if %WARNINGS% equ 0 (
        echo   ✓ 所有检查通过！
    ) else (
        echo   ⚠ 检查完成，有 %WARNINGS% 个警告
    )
) else (
    echo   ✗ 检查失败，发现 %ERRORS% 个错误，%WARNINGS% 个警告
)
echo ========================================
echo.

pause

